#!/bin/sh

# ======= 路径配置 =========
IFS=$'\n' #避免文件名中有空格时出错,不然带空格的文件无法读取
# 存储配置文件的位置
targetDir=~/Library/MobileDevice/Provisioning\ Profiles
# 当前配置文件的位置
profilesDir=$(pwd)/profiles

# 拷贝配置文件到对应的目录中
function zm_copyProfiles() {
    echo "\n文件拷贝中>>>>>>"
    echo "====================================\n"
    echo FROM:
    echo $profilesDir
    echo TO:
    echo $targetDir
    echo "\n===================================="
    
    cp -rf $profilesDir/. $targetDir
    
    echo "文件拷贝成功!\n"
}

# 获取文件目录下的文件，并删除其所有子文件
function zm_deleteAllFiles() {
echo "\n文件清除中>>>>>>"
echo "===================================="
    for element in `ls $1` #两个反引号，表示运行系统命令
    do
        dir_or_file=$1"/"$element
        if [ -d $dir_or_file ] #此处之间一定要加上空格，否则会报错
        then
            zm_deleteAllFiles $dir_or_file
        else
        #在此处处理文件
        echo $dir_or_file
        rm -rf $dir_or_file
        fi
    done
echo "===================================="
}

# 判断是否清理完毕
function zm_judgeIsDeleteAll() {
    if [ $? -eq 0 ]
    then
        echo "配置文件全部删除成功!"
    else
        echo "配置文件清理失败!"
        cd $CURRPATH
        exit 1
    fi
}

# 拷贝配置文件，带删除就数据
function zm_copyProfilesAfterDeleteFiles() {
    zm_deleteAllFiles $targetDir
    zm_judgeIsDeleteAll
    zm_copyProfiles
}

# 条件判断处理
usage() {
case $choice in
1)
zm_copyProfiles
sleep 1
exit 0
;;

2)
zm_copyProfilesAfterDeleteFiles
sleep 1
exit 0
;;

3)
exit 0
;;

*)
;;

esac

}

# 执行文件
startInstall() {
while :
do
cat<<EOF

 *************************************************
*                    MENU

*   1.仅拷贝文件到系统目录
*   2.先删除所有系统配置文件,再拷贝
*   3.exit

 *************************************************
 
EOF
 
read -p "please enter your choice : " choice

usage

done

}

startInstall
